Skip to content

feat(IdeaSummary): Template to organize display of ideas#2270

Merged
hirokiterashima merged 16 commits intodevelopfrom
cm-idea-summary-using-rubric-template
Feb 20, 2026
Merged

feat(IdeaSummary): Template to organize display of ideas#2270
hirokiterashima merged 16 commits intodevelopfrom
cm-idea-summary-using-rubric-template

Conversation

@hirokiterashima
Copy link
Member

@hirokiterashima hirokiterashima commented Feb 14, 2026

Notes

  • Please style as you see fit! It might be good to distinguish between the different idea summary groups a bit more somehow.

Summary

This PR adds support to configure how the idea summary is displayed in the Teacher Tools. We do this by allowing the unit author to specify IdeasSummaryGroups in the CRater rubric. There are two sections to this view: initial (always visible) and additional (visible after clicking on "show more"), and each section can have one or more groups. Tags are used to specify which idea categories get displayed in each IdeaSummaryGroup. Tags are also used to specify the colors of the idea categories.

Screenshot 2026-02-13 at 4 30 08 PM

Test Prep

  1. Add to "cRaterRubric" section of a DialogGuidance component or "cRater.rubric" section of an OpenResponse component:
ideasSummaryGroups": {
	"initial": [
		{
			"maxIdeas": 2,
			"title": "mechanistic ideas",
			"tags": [
				"mechanistic"
			],
			"sort": {
				"field": "count",
				"order": "desc"
			}
		},
		{
			"title": "important ideas",
			"tags": [
				"important"
			],
			"sort": {
				"field": "count",
				"order": "asc"
			},
			"showUndetectedIdeas": true
		}
	],
	"additional": [
		{
			"title": "misapplied ideas",
			"tags": [
				"misapplied"
			],
			"sort": {
				"field": "count",
				"order": "desc"
			},
			"showUndetectedIdeas": true
		}
	]
},
"ideaColors": [
	{
		"colorValue": "red",
		"tags": [
			"mechanistic",
			"misapplied"
		]
	},
	{
		"colorValue": "orange",
		"tags": [
			"mechanistic"
		]
	},
	{
		"colorValue": "yellow",
		"tags": [
			"misapplied"
		]
	},
	{
		"colorValue": "green",
		"tags": [
			"important"
		]
	}
],
  1. Add tags to ideas
"ideas": [
	{
		"name": "1",
		"text": "All people have equal access to fresh food",
		"tags": [
			"misapplied",
			"important"
		]
	},
	{
		"name": "1b",
		"text": "Not all people have equal access to fresh food",
		"tags": [
			"important"
		]
	},
...
]

Test

  • IdeaCategories are displayed in the IdeaSummaryGroups if the tags match. The IdeaCategory must have at least all of the tags that are specified in the IdeaSummaryGroups.
  • IdeaCategories show the correct color as specified in the ideaColors array. We choose the first-matched color in the "ideaColors" array.
  • maxIdeas limits the number of IdeaCategories that are displayed in each group
  • sort correctly sorts the IdeaCategories by the number of students who had that idea. Test both 'asc' (ascending) and 'desc' (descending) orders.
  • setting showUndetectedIdeas to true will display IdeaCategories that didn't have any detected ideas. Setting this to false, or not specifying this field will not show them.
  • Original summary view (most common, least common, and all ideas) works as before. This is the default behavior when no ideasSummaryGroups is authored for the component's rubric.

@hirokiterashima hirokiterashima self-assigned this Feb 14, 2026
@hirokiterashima hirokiterashima added the enhancement New feature of any size or improvement (UI, performance, security) label Feb 14, 2026
@qltysh
Copy link

qltysh bot commented Feb 14, 2026

All good ✅

@hirokiterashima hirokiterashima marked this pull request as ready for review February 14, 2026 00:52
Base automatically changed from cm-idea-summary-show-student-responses to develop February 18, 2026 06:01
@qltysh
Copy link

qltysh bot commented Feb 18, 2026

Qlty

Coverage Impact

Unable to calculate total coverage change because base branch coverage was not found.

Modified Files with Diff Coverage (12)

RatingFile% DiffUncovered Line #s
New file Coverage rating: A
...cher-summary-display/summary-data/DialogGuidanceSummaryData.ts100.0%
New file Coverage rating: A
...eacher-summary-display/summary-data/OpenResponseSummaryData.ts100.0%
New file Coverage rating: A
...ponents/common/cRater/crater-rubric/crater-rubric.component.ts100.0%
New file Coverage rating: A
...tives/teacher-summary-display/summary-data/IdeasSummaryData.ts95.2%32
New file Coverage rating: B
...pen-response-advanced/edit-open-response-advanced.component.ts100.0%
New file Coverage rating: A
src/assets/wise5/common/array/array.ts100.0%
New file Coverage rating: A
src/assets/wise5/components/common/cRater/IdeaData.ts100.0%
New file Coverage rating: C
src/assets/wise5/components/common/cRater/CRaterIdea.ts0.0%8
New file Coverage rating: A
src/assets/wise5/components/common/cRater/CRaterRubric.ts100.0%
New file Coverage rating: A
...mmary-display/ideas-summary-display/ideas-summary.component.ts100.0%
New file Coverage rating: C
...teacher-summary-display/idea-summary/idea-summary.component.ts0.0%29-32
New file Coverage rating: A
...ssets/wise5/components/dialogGuidance/dialogGuidanceService.ts100.0%
Total94.9%
🤖 Increase coverage with AI coding...

In the `cm-idea-summary-using-rubric-template` branch, add test coverage for this new code:

- `src/assets/wise5/components/common/cRater/CRaterIdea.ts` -- Line 8
- `src/assets/wise5/directives/teacher-summary-display/idea-summary/idea-summary.component.ts` -- Line 29-32
- `src/assets/wise5/directives/teacher-summary-display/summary-data/IdeasSummaryData.ts` -- Line 32

🚦 See full report on Qlty Cloud »

🛟 Help
  • Diff Coverage: Coverage for added or modified lines of code (excludes deleted files). Learn more.

  • Total Coverage: Coverage for the whole repository, calculated as the sum of all File Coverage. Learn more.

  • File Coverage: Covered Lines divided by Covered Lines plus Missed Lines. (Excludes non-executable lines including blank lines and comments.)

    • Indirect Changes: Changes to File Coverage for files that were not modified in this PR. Learn more.

@hirokiterashima hirokiterashima merged commit a1254dc into develop Feb 20, 2026
4 checks passed
@hirokiterashima hirokiterashima deleted the cm-idea-summary-using-rubric-template branch February 20, 2026 00:17
@hirokiterashima
Copy link
Member Author

🎉 This PR is included in version 5.209.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature of any size or improvement (UI, performance, security) released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Comments